Joller-Voss Nachdiplomkurs Java - Java Certification
Winter Semester
Kommunikation mit COBRA-Broker
vorheriges Kapitel     Kursunterlagen Index     Nächstes Kapitel    
© , Alle Rechte vorbehalten, Josef M. Joller
Prof Dr. Josef M. Joller

Zielpublikum Software-Entwickler
Vorkenntnisse Vertiefte Java-Kenntnisse, Netzwerkkenntnisse im Umfang der vorangehenden Kurse (Netzwerkkommunikation, RMI)
Kursbeginn Sommer / Herbst
Kursdauer 6 Abende
Zeiten Jeweils Dienstag und Donnerstag,17.30 bis 21.45 Uhr

Inhaltsverzeichnis - Kommunikation mit COBRA-Broker

KURSZIELE
- Sie kennen die Object Management Architectur (OMA) 
  sowie die Architektur eines CORBA Systems.
- Sie können in der Praxis abschätzen, ob die CORBA Technologie die
  angepasste Lösung bieten kann und können diese Lösung teilweise
  selbständig realisieren

KURSUNTERLAGEN
Skript (PDF)
Übungen und Beispiele (ZIP)
Zusatzliteratur 
1) Locating CORBA Objects (PDF)
2) Java IDL PowerPoint Einführung (PDF)
3) Java IDL und CORBA PowerPoint Einführung (PDF)

KURSINHALTE

CORBA - HETEREOGENE VERTEILTE SYSTEME	1
1.1.	KONZEPTE: CORBA UND VERTEILTE SYSTEME	1
1.1.1.	Lernziele	2
1.2.	VERTEILTE APPLIKATION AUS CORBA SICHT	2
1.2.1.	Verteilung der Applikationen	2
1.2.1.1.	Daten sind verteilt	2
1.2.1.2.	Rechnerleistung ist verteilt	2
1.2.1.3.	Benutzer sind verteilt	3
1.2.1.4.	Grundlegende Tatsachen über Verteilte Systeme / Objekte	3
1.2.1.5.	Verteilte Objektsysteme	4
1.3.	KONZEPTE FÜR VERTEILTE APPLIKATIONEN	5
1.3.1.	Multi-Tiered Applikationen	5
1.3.2.	User-Interface Tier	5
1.3.3.	Service (Server) Tier	6
1.3.4.	Data Store (Database) Tier	6
1.4.	DIE OMG CORBA SPEZIFIKATION	7
1.4.1.	Was ist CORBA?	7
1.4.1.1.	Die OMG	7
1.4.1.2.	CORBA Architektur	7
1.4.1.3.	Der ORB	9
1.4.1.4.	CORBA als Standard für Verteilte Objektsysteme	10
1.4.1.5.	CORBA Services	12
1.4.1.6.	Die Facilities von CORBA	13
1.4.1.7.	CORBA Produkte	14
1.4.1.7.1.	JavaORB - ein frei erhältlicher Objekt Broker	14
1.5.	EINE BEISPIELAPPLIKATION	15
1.5.1.	Die Börsen Applikation	15
1.5.1.1.	Einige Objekte unserer Börsenapplikation	16
1.6.	IMPLEMENTATION DES CLIENT	17
1.6.1.	Implementation eines CORBA Clients	17
1.6.1.1.	CORBA Objekte werden als IDL Interfaces beschrieben	17
1.6.1.2.	Objekt Referenzen und Requests	19
1.6.1.3.	IDL Typen System	20
1.6.1.3.1.	IDL Type Operationen	21
1.6.1.3.2.	Request Type Checking	22
1.6.1.4.	IDL zu Java Binding	22
1.6.1.5.	Der IDL to Java Compiler	23
1.6.1.6.	Bestimmen einer Objekt Referenz	23
1.6.1.7.	Das Kreieren eines Objekts aus Clientsicht	24
1.6.1.8.	Exceptions	25
1.7.	IMPLEMENTATION EINES EINFACHEN VERTEILTEN OBJEKT SYSTEMS	26
1.7.1.	Objekt Implementation	26
1.7.1.1.	Erstellen einer Implementation	26
1.7.1.2.	Interface versus Implementation Hierarchien	27
1.7.1.3.	Implementation vom Type Checking	28
1.7.1.4.	Implementation eines Server mit dem Java 2 ORB	29
1.7.1.5.	Implementieren eines Server mit VisiBroker	30
1.7.1.6.	Unterschiede der Server Implementationen	31
1.7.1.7.	Packaging Objekt Implementationen	31
1.8.	OBJEKT ADAPTER	32
1.8.1.	Objekt Adapter	32
1.8.1.1.	Activation on Demand durch den  Basic Object Adapter (BOA)	32
1.8.1.2.	Portable Object Adapter (POA)	33
1.9.	RESOURCEN	34
1.9.1.	Resourcen	34
1.9.1.1.	Web Sites	34
1.9.1.2.	Dokumentation und Spezifikation	34
1.9.1.3.	Bücher	34
1.9.1.4.	Verschiedene Quelle	34
1.10.	NOTIZEN ZU JAVA 2 ORB	35
1.10.1.	Java 2 ORB	35
1.10.1.1.	idlj und idltojava	35
1.10.1.2.	System Properties	36
1.11.	VISIBROKER	37
1.11.1.	VisiBroker Übersicht	37
1.11.1.1.	VisiBroker Tools	37
1.11.1.2.	Einsatz von VisiBroker mit Java 2	37
1.11.1.3.	Portable Stubs und Skeletons	38
1.11.1.3.1.	Was ist der Unterschied zwischen portabler und proprietärer Version?	38
1.11.1.4.	Einsatz des BOA mit VisiBroker	39
1.11.1.5.	Einsatz des VisiBroker Smart Agent	40
1.12.	HELLO WORLD ALS CORBA APPLIKATION	41
1.12.1.	IDL Beschreibung der HelloWorld Objektwelt	41
1.12.1.1.	_HelloImplBase.Java	42
1.12.1.2.	_HelloStub.java	43
1.12.1.3.	Hello.java	44
1.12.1.4.	HelloHelper.java	45
1.12.1.5.	HelloHolder.java	46
1.12.2.	Implementation des Servers	47
1.12.2.1.	Die Servant Klasse : HelloServant.Java	47
1.12.2.2.	Die Server Klasse : HelloServer.Java	48
1.12.3.	Implementation des Clients	49
1.12.3.1.	Die Clientklasse : HelloClient.Java	49
1.12.4.	Der Client als Applet	50
1.12.4.1.	Die Appletklasse : HelloApplet.Java	50
1.12.5.	Übersetzen und Starten der Applikation : Schritt für Schritt	51
1.12.5.1.	IDL Beschreibung in Java übersetzen	51
1.12.5.2.	Compilieren der Java Dateien	51
1.12.5.3.	Starten des Namensservers	51
1.12.5.4.	Starten der Hello Servers	52
1.12.5.5.	Starten des Hello Clients	52
1.12.5.6.	Stoppen des Servers und des Nameservices	52
1.13.	NAMING SERVICE	53
1.13.1.	Java IDL Name Server	53
1.13.2.	Starten des Java IDL Name Server	53
1.13.3.	Stoppen des Java IDL Name Server	54
1.13.4.	Beispiel Client: Objekte einem Namespace hinzufügen	54
1.13.5.	Beispiel Client: Abfrage des Namespace	56
1.14.	CORBA EXCEPTIONS	58
1.14.1.	Unterschiede zwischen CORBA und Java Exceptions	58
1.14.2.	System Exceptions	58
1.14.2.1.	System Exception Struktur	59
1.14.2.2.	Minor Codes	59
1.14.2.3.	Completion Codes	59
1.14.3.	User Exceptions	59
1.14.4.	Minor Code Bedeutung	60
1.15.	INITIALISIERUNG	62
1.15.1.	Kreieren eines ORB Objekts	62
1.15.1.1.	Kreieren eines ORBs für eine Applikation	62
1.15.1.2.	Kreieren eines ORB für ein Applet	62
1.15.1.3.	Argumente für ORB.init()	63
1.15.1.4.	System Eigenschaften	64
1.15.2.	Bestimmen einer initialen Objektreferenz	65
1.15.2.1.	Stringified Objektreferenzen	65
1.15.2.2.	Referenzen von einem ORB erhalten	66
1.16.	ÜBERSICHT : IDL ZU JAVA MAPPING	67
1.16.1.	IDL zu Java Übersicht	67
1.17.	SPEICHERN DES ZUSTANDES - HELLO WORLD MIT PERSISTENTEM ZUSTAND	68
1.17.1.	Interface Definition (Hello.idl)	68
1.17.2.	Implementation des Servers (HelloServer.java)	69
1.17.3.	Implementation des Clients (HelloClient.java)	71
1.17.4.	Konkretes Vorgehen : Bau, Übersetzen und Start der Applikation	72
1.18.	HELLO WORLD MIT CALLBACK OBJEKT	73
1.18.1.	Interface Definition (Hello.idl)	73
1.18.2.	Implementation des Servers (HelloServer.java)	74
1.18.3.	Implementation des Clients (HelloClient.java)	75
1.18.4.	Konkretes Vorgehen für Hello World Callback	76
1.19.	BERÜCKSICHTIGUNG VON VERERBUNG	77
1.19.1.	Interface Definition (Hello.idl)	77
1.19.1.1.	_HelloOperations.java	78
1.19.1.2.	_HelloTie.java	78
1.19.2.	Implementation des Servers (HelloServer.java)	79
1.19.3.	Implementation des Clients (HelloClient.java)	80
1.19.4.	Konkretes Vorgehen zum Bau von Callback Hello World	80
1.20.	DAS DYNAMIC SKELETON INTERFACE DSI	/ Dynamic Invocation Interface (DII)81
1.20.1.	Warum soll man DSI überhaupt einsetzen?	82
1.20.2.	DSI -  Ein Beispiel	83
1.21.	SCHLUSSBEMERKUNGEN	85


Copyright ©, Alle Rechte vorbehalten.
Josef M. Joller Sonnenbergstrasse 73, CH-8610 USTER / Schweiz.

Sie sind bereits Sekunden auf dieser Seite
Heute ist (lokale Zeit)